73e3af
@@ -303,8 +303,8 @@
public class AsyncMetaTableAccessor {
     startRow.ifPresent(scan::withStartRow);
     stopRow.ifPresent(scan::withStopRow);
 
-    if (LOG.isTraceEnabled()) {
-      LOG.trace("Scanning META" + " starting at row=" + Bytes.toStringBinary(scan.getStartRow())
+    if (LOG.isDebugEnabled()) {
+      LOG.debug("Scanning META" + " starting at row=" + Bytes.toStringBinary(scan.getStartRow())
           + " stopping at row=" + Bytes.toStringBinary(scan.getStopRow()) + " for max="
           + rowUpperLimit + " with caching=" + scan.getCaching());
     }
@@ -346,19 +346,26 @@
public class AsyncMetaTableAccessor {
 
     @Override
     public void onNext(Result[] results, ScanController controller) {
+      boolean terminateScan = false;
       for (Result result : results) {
         try {
           if (!visitor.visit(result)) {
-            controller.terminate();
+            terminateScan = true;
+            break;
           }
-        } catch (IOException e) {
+        } catch (Exception e) {
           future.completeExceptionally(e);
-          controller.terminate();
+          terminateScan = true;
+          break;
         }
         if (++currentRowCount >= rowUpperLimit) {
-          controller.terminate();
+          terminateScan = true;
+          break;
         }
       }
+      if (terminateScan) {
+        controller.terminate();
+      }
     }
   }
 
